1. Field of the Invention
The present invention relates to a debugging system and a debugging method which can be applied to a development tool for developing and debugging software and hardware for use in microcomputer application products.
2. Description of the Prior Art
A conventional development tool for a microcomputer comprises a controller portion for receiving command input from a host machine operated by a user to control overall operations of the development tool; a portion (referred to as "POD" hereinafter) including target CPUs prepared for respective CPUs of debugging object systems and a control unit for controlling operations of the target CPUs; and a probe portion which has the same terminal arrangement as respective target CPUs and is connected to a terminal, to which the CPU on the debugging object system is connected, to thus supply output signals of the POD to the debugging object system.
When such development tool is employed, first the user pulls out the CPU from the debugging object system and then, in place of the CPU, the probe portion is inserted into a terminal into which the CPU of the debugging object system has been inserted, whereby the development tool is ready for operation. In operation, the development tool can execute debugging operations, e.g., can refer to values of registers in the target CPU, refer to values of variables stored in a memory, rewrite such values of variables, and so forth. However, if values of the registers and contents of memories in the CPU are referred to and the values of the registers and the contents of the memories are altered, such operations have to be executed after the user program which is running in the target CPU is suspended once and then a program used to display and alter the contents of registers and the contents of memories (such program is called a "steal program" hereinafter) is executed by the target CPU.
Accordingly, if a control system program is to be debugged, it has taken an extra time to execute such steal program when I/O operation is to be executed or when the contents of the register and the contents of the memories are to be confirmed or checked in the course of process according to the program. As a result, there are possibilities that not only the program cannot be debugged in real running time, but also various devices connected to the debugging object system are damaged and such devices connected to the debugging object system and the debugging object system itself are destroyed since an operation of the debugging object system, e.g., printer, motor, etc. is inadvertently halted and suspended every confirmation.
As described above, in the debugging system in the prior art, if the contents of the register and the contents of the memories in the target CPU are to be confirmed or altered, the debugging object system cannot be debugged in real time since the extra time to execute a particular program is needed. In addition, since the operation of the debugging object system must be suspended when the contents of the register and the contents of the memories in the target CPU are to be confirmed or altered by executing the particular program, the debugging object system may be affected harmfully.